package com.demo.aop.apodemo.annotation;

import java.lang.annotation.*;

/**
 * 定义了一个注解
 * @author xieqiong
 * @Target 用于描述注解的使用范围,METHOD用于描述方法
 * @Retention 用于描述注解的生命周期 RUNTIME在运行时有效（即运行时保留）。
 * @Documented 在默认的情况下javadoc命令不会将我们的annotation生成再doc中去的，所以使用该标记就是告诉jdk让它也将annotation生成到doc中去
 * @Inherited 比如有一个类A，在他上面有一个标记annotation，那么A的子类B是否不用再次标记annotation就可以继承得到呢，答案是肯定的
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Action {
    String name();
}